package com.lp.service.impl;

import com.lp.dao.ArgumentDao;
import com.lp.po.Argument;
import com.lp.po.PagingVO;
import com.lp.service.ArgumentService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;


@Service
public class ArgumentServiceImpl implements ArgumentService {

    @Resource
    private ArgumentDao argumentDao;

    public Argument getByName(String name) {
        return argumentDao.getByName(name);
    }

    @Override
    public int getCount() {
        return argumentDao.count();
    }

    @Override
    public List<Argument> findAllArgument(Integer page) {
        PagingVO pagingVO = new PagingVO();
        pagingVO.setToPageNo(page);
        List<Argument> list=argumentDao.findAllArgument(pagingVO);
        return list;
    }

    @Override
    public int getCountByName(String name) {
        return argumentDao.countByName(name);
    }

    @Override
    public List<Argument> findByArgumentName(int page, String name) {
        PagingVO pagingVO = new PagingVO();
        pagingVO.setToPageNo(page);
        List<Argument> list=argumentDao.findByArgumentName(pagingVO.getTopageNo(),pagingVO.getPageSize(),name);
        return list;
    }

    @Override
    public Boolean save(Argument argument) {
        Argument arg = argumentDao.getByName(argument.getName());
        if (arg == null) {
            argumentDao.insert(argument);
            return true;
        }
        return false;
    }

    @Override
    public Argument findById(Integer id) {
        return argumentDao.findById(id);
    }

    @Override
    public void updataById(Integer aid, Argument argument) {
        argumentDao.updateByPrimaryKey(argument);
    }

    @Override
    public void removeById(Integer id) {
        argumentDao.removeById(id);
    }
}
